@echo off

REM 确保cmake在PATH中
where cmake >nul 2>nul
if %errorlevel% neq 0 (
    echo 错误: 未找到CMake。请确保CMake已安装并添加到系统PATH中。
    pause
    exit /b 1
)

REM 检查是否安装了Visual Studio编译器
if not defined VSINSTALLDIR (
    echo 错误: 未找到Visual Studio编译器。请确保已安装Visual Studio并运行其命令提示符。
    pause
    exit /b 1
)

REM 创建或清理构建目录
if exist cmake-build-debug rmdir /s /q cmake-build-debug
mkdir cmake-build-debug
cd cmake-build-debug

REM 配置项目
cmake .. -DCMAKE_BUILD_TYPE=Debug
if %errorlevel% neq 0 (
    echo 错误: CMake配置失败。
    cd ..
    pause
    exit /b 1
)

REM 构建项目
cmake --build . --config Debug
if %errorlevel% neq 0 (
    echo 错误: 项目构建失败。
    cd ..
    pause
    exit /b 1
)

REM 运行程序（如果构建成功）
echo 项目构建成功！
echo. 
echo 提示：在运行程序前，请确保Modbus TCP服务器已在127.0.0.1:502上启动。
echo. 
echo 按任意键运行程序...
pause >nul
bin\test.exe

cd ..
pause